home *** CD-ROM | disk | FTP | other *** search
-
-
-
- ____GGGGEEEEMMMMVVVV((((3333FFFF)))) ____GGGGEEEEMMMMVVVV((((3333FFFF))))
-
-
-
- NNNNAAAAMMMMEEEE
- dgemv, sgemv, zgemv, cgemv - BLAS Level Two Matrix-Vector Product
-
-
- FFFFOOOORRRRTTTTRRRRAAAANNNN 77777777 SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- ssssuuuubbbbrrrroooouuuuttttiiiinnnneeee ddddggggeeeemmmmvvvv(((( ttttrrrraaaannnnssss,,,,mmmm,,,,nnnn,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,xxxx,,,,iiiinnnnccccxxxx,,,,bbbbeeeettttaaaa,,,,yyyy,,,,iiiinnnnccccyyyy ))))
- cccchhhhaaaarrrraaaacccctttteeeerrrr****1111 ttttrrrraaaannnnssss
- iiiinnnntttteeeeggggeeeerrrr nnnn,,,, mmmm,,,, llllddddaaaa,,,, iiiinnnnccccxxxx,,,, iiiinnnnccccyyyy
- ddddoooouuuubbbblllleeee pppprrrreeeecccciiiissssiiiioooonnnn aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa
- ddddoooouuuubbbblllleeee pppprrrreeeecccciiiissssiiiioooonnnn aaaa(((( llllddddaaaa,,,,****)))),,,, xxxx((((****)))),,,, yyyy((((****))))
-
- ssssuuuubbbbrrrroooouuuuttttiiiinnnneeee ssssggggeeeemmmmvvvv(((( ttttrrrraaaannnnssss,,,,mmmm,,,,nnnn,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,xxxx,,,,iiiinnnnccccxxxx,,,,bbbbeeeettttaaaa,,,,yyyy,,,,iiiinnnnccccyyyy ))))
- cccchhhhaaaarrrraaaacccctttteeeerrrr****1111 ttttrrrraaaannnnssss
- iiiinnnntttteeeeggggeeeerrrr nnnn,,,, mmmm,,,, llllddddaaaa,,,, iiiinnnnccccxxxx,,,, iiiinnnnccccyyyy
- rrrreeeeaaaallll aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa
- rrrreeeeaaaallll aaaa(((( llllddddaaaa,,,,****)))),,,, xxxx((((****)))),,,, yyyy((((****))))
-
- ssssuuuubbbbrrrroooouuuuttttiiiinnnneeee zzzzggggeeeemmmmvvvv(((( ttttrrrraaaannnnssss,,,,mmmm,,,,nnnn,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,xxxx,,,,iiiinnnnccccxxxx,,,,bbbbeeeettttaaaa,,,,yyyy,,,,iiiinnnnccccyyyy ))))
- cccchhhhaaaarrrraaaacccctttteeeerrrr****1111 ttttrrrraaaannnnssss
- iiiinnnntttteeeeggggeeeerrrr nnnn,,,, mmmm,,,, llllddddaaaa,,,, iiiinnnnccccxxxx,,,, iiiinnnnccccyyyy
- ddddoooouuuubbbblllleeee ccccoooommmmpppplllleeeexxxx aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa
- ddddoooouuuubbbblllleeee ccccoooommmmpppplllleeeexxxx aaaa(((( llllddddaaaa,,,,****)))),,,, xxxx((((****)))),,,, yyyy((((****))))
-
- ssssuuuubbbbrrrroooouuuuttttiiiinnnneeee ccccggggeeeemmmmvvvv(((( ttttrrrraaaannnnssss,,,,mmmm,,,,nnnn,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,xxxx,,,,iiiinnnnccccxxxx,,,,bbbbeeeettttaaaa,,,,yyyy,,,,iiiinnnnccccyyyy ))))
- cccchhhhaaaarrrraaaacccctttteeeerrrr****1111 ttttrrrraaaannnnssss
- iiiinnnntttteeeeggggeeeerrrr nnnn,,,, mmmm,,,, llllddddaaaa,,,, iiiinnnnccccxxxx,,,, iiiinnnnccccyyyy
- ccccoooommmmpppplllleeeexxxx aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa
- ccccoooommmmpppplllleeeexxxx aaaa(((( llllddddaaaa,,,,****)))),,,, xxxx((((****)))),,,, yyyy((((****))))
-
-
- CCCC SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
- vvvvooooiiiidddd ddddggggeeeemmmmvvvv(((( ttttrrrraaaannnnssss,,,,mmmm,,,,nnnn,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,xxxx,,,,iiiinnnnccccxxxx,,,,bbbbeeeettttaaaa,,,,yyyy,,,,iiiinnnnccccyyyy ))))
- MMMMaaaattttrrrriiiixxxxTTTTrrrraaaannnnssssppppoooosssseeee ttttrrrraaaannnnssss;;;;
- IIIInnnntttteeeeggggeeeerrrr nnnn,,,, mmmm,,,, llllddddaaaa,,,, iiiinnnnccccxxxx,,,, iiiinnnnccccyyyy;;;;
- ddddoooouuuubbbblllleeee aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa;;;;
- ddddoooouuuubbbblllleeee ((((****aaaa))))[[[[llllddddaaaa****nnnn]]]],,,, ((((****xxxx))))[[[[ nnnn ]]]],,,, ((((****yyyy))))[[[[ nnnn ]]]];;;;
-
- vvvvooooiiiidddd ssssggggeeeemmmmvvvv(((( ttttrrrraaaannnnssss,,,,mmmm,,,,nnnn,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,xxxx,,,,iiiinnnnccccxxxx,,,,bbbbeeeettttaaaa,,,,yyyy,,,,iiiinnnnccccyyyy ))))
- MMMMaaaattttrrrriiiixxxxTTTTrrrraaaannnnssssppppoooosssseeee ttttrrrraaaannnnssss;;;;
- IIIInnnntttteeeeggggeeeerrrr nnnn,,,, mmmm,,,, llllddddaaaa,,,, iiiinnnnccccxxxx,,,, iiiinnnnccccyyyy;;;;
- ffffllllooooaaaatttt aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa;;;;
- ffffllllooooaaaatttt ((((****aaaa))))[[[[llllddddaaaa****nnnn]]]],,,, ((((****xxxx))))[[[[ nnnn ]]]],,,, ((((****yyyy))))[[[[ nnnn ]]]];;;;
-
- vvvvooooiiiidddd zzzzggggeeeemmmmvvvv(((( ttttrrrraaaannnnssss,,,,mmmm,,,,nnnn,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,xxxx,,,,iiiinnnnccccxxxx,,,,bbbbeeeettttaaaa,,,,yyyy,,,,iiiinnnnccccyyyy ))))
- MMMMaaaattttrrrriiiixxxxTTTTrrrraaaannnnssssppppoooosssseeee ttttrrrraaaannnnssss;;;;
- IIIInnnntttteeeeggggeeeerrrr nnnn,,,, mmmm,,,, llllddddaaaa,,,, iiiinnnnccccxxxx,,,, iiiinnnnccccyyyy;;;;
- ZZZZoooommmmpppplllleeeexxxx aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa;;;;
- ZZZZoooommmmpppplllleeeexxxx ((((****aaaa))))[[[[llllddddaaaa****nnnn]]]],,,, ((((****xxxx))))[[[[ nnnn ]]]],,,, ((((****yyyy))))[[[[ nnnn ]]]];;;;
-
- vvvvooooiiiidddd ccccggggeeeemmmmvvvv(((( ttttrrrraaaannnnssss,,,,mmmm,,,,nnnn,,,,aaaallllpppphhhhaaaa,,,,aaaa,,,,llllddddaaaa,,,,xxxx,,,,iiiinnnnccccxxxx,,,,bbbbeeeettttaaaa,,,,yyyy,,,,iiiinnnnccccyyyy ))))
- MMMMaaaattttrrrriiiixxxxTTTTrrrraaaannnnssssppppoooosssseeee ttttrrrraaaannnnssss;;;;
- IIIInnnntttteeeeggggeeeerrrr nnnn,,,, mmmm,,,, llllddddaaaa,,,, iiiinnnnccccxxxx,,,, iiiinnnnccccyyyy;;;;
-
-
-
- PPPPaaaaggggeeee 1111
-
-
-
-
-
-
- ____GGGGEEEEMMMMVVVV((((3333FFFF)))) ____GGGGEEEEMMMMVVVV((((3333FFFF))))
-
-
-
- CCCCoooommmmpppplllleeeexxxx aaaallllpppphhhhaaaa,,,, bbbbeeeettttaaaa;;;;
- CCCCoooommmmpppplllleeeexxxx ((((****aaaa))))[[[[llllddddaaaa****nnnn]]]],,,, ((((****xxxx))))[[[[ nnnn ]]]],,,, ((((****yyyy))))[[[[ nnnn ]]]];;;;
-
-
- DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
- ddddggggeeeemmmmvvvv ,,,, ssssggggeeeemmmmvvvv ,,,, ddddggggeeeemmmmvvvv and ccccggggeeeemmmmvvvv perform one of the matrix-vector
- operations:
-
- y := alpha*A*x + beta*y, or y := alpha*A'*x + beta*y, or
-
- y := alpha*conjg( A' )*x + beta*y,
-
- where alpha and beta are scalars, x and y are vectors and A is an m by n
- matrix.
-
-
- PPPPAAAARRRRAAAAMMMMEEEETTTTEEEERRRRSSSS
- ttttrrrraaaannnnssss On entry, ttttrrrraaaannnnssss specifies the operation to be performed as
- follows:
-
- FFFFOOOORRRRTTTTRRRRAAAANNNN
- trans = 'N' or 'n' y := alpha*A*x + beta*y.
- trans = 'T' or 't' y := alpha*A'*x + beta*y.
- trans = 'C' or 'c' y := alpha*conjg( A' )*x + beta*y.
-
- CCCC
- trans = NoTranspose y := alpha*A*x + beta*y.
- trans = Transpose y := alpha*A'*x + beta*y.
- trans = ConjugateTranspose y := alpha*conjg( A' )*x + beta**y.
-
- Unchanged on exit.
-
- mmmm On entry, mmmm specifies the number of rows of the matrix A. mmmm must
- be at least zero.
- Unchanged on exit.
-
- nnnn On entry, nnnn specifies the order of the matrix A. nnnn must be at
- least zero.
- Unchanged on exit.
-
- aaaallllpppphhhhaaaa On entry, aaaallllpppphhhhaaaa specifies the scalar alpha.
- Unchanged on exit.
-
- aaaa An array containing the matrix A.
-
- FFFFOOOORRRRTTTTRRRRAAAANNNN
- Array of dimension ( lda, n ).
-
- CCCC
- A pointer to an array of size lda*n.
- See note below about array storage convention for C.
-
-
-
-
- PPPPaaaaggggeeee 2222
-
-
-
-
-
-
- ____GGGGEEEEMMMMVVVV((((3333FFFF)))) ____GGGGEEEEMMMMVVVV((((3333FFFF))))
-
-
-
- Before entry, the leading m by n part of the array A must contain
- the matrix of coefficients.
- Unchanged on exit.
-
- llllddddaaaa On entry, llllddddaaaa specifies the first dimension of aaaa as declared in
- the calling (sub) program. llllddddaaaa must be at least ( k + 1 ).
- Unchanged on exit.
-
- xxxx Array of size at least ( 1 + ( n - 1 )*abs( incx ) ) when trans =
- 'N' or 'n' or NoTranspose and at least ( 1 + ( m - 1 )*abs( incx
- ) ) otherwise. Before entry, the incremented array xxxx must contain
- the vector x.
- Unchanged on exit.
-
- iiiinnnnccccxxxx On entry, iiiinnnnccccxxxx specifies the increment for the elements of xxxx.
- iiiinnnnccccxxxx must not be zero.
- Unchanged on exit.
-
- bbbbeeeettttaaaa On entry, bbbbeeeettttaaaa specifies the scalar beta. When bbbbeeeettttaaaa is supplied
- as zero then yyyy need not be set on input.
- Unchanged on exit.
-
- yyyy Array of size at least ( 1 + ( m - 1 )*abs( incy ) ) when trans =
- 'N' or 'n' or NoTranspose and at least ( 1 + ( n - 1 )*abs( incy
- ) ) otherwise.
-
- Before entry with bbbbeeeettttaaaa non-zero, the incremented array yyyy must
- contain the vector y. On exit, yyyy is overwritten by the updated
- vector y.
-
- iiiinnnnccccyyyy On entry, iiiinnnnccccyyyy specifies the increment for the elements of yyyy.
- iiiinnnnccccyyyy must not be zero.
- Unchanged on exit.
-
-
- CCCC AAAARRRRRRRRAAAAYYYY SSSSTTTTOOOORRRRAAAAGGGGEEEE CCCCOOOONNNNVVVVEEEENNNNTTTTIIIIOOOONNNN
- The matrices are assumed to be stored in a oooonnnneeee ddddiiiimmmmeeeennnnssssiiiioooonnnnaaaallll CCCC aaaarrrrrrrraaaayyyy
- in an analogous fashion as a Fortran array (column major). Therefore,
- the element A(i+1,j) of matrix A is stored immediately after the
- element A(i,j), while A(i,j+1) is lda elements apart from A(i,j).
- The element A(i,j) of the matrix can be accessed directly by reference
- to a[ (j-1)*lda + (i-1) ].
-
-
-
- AAAAUUUUTTTTHHHHOOOORRRRSSSS
- Jack Dongarra, Argonne National Laboratory.
- Iain Duff, AERE Harwell.
- Jeremy Du Croz, Numerical Algorithms Group Ltd.
- Sven Hammarling, Numerical Algorithms Group Ltd.
-
-
-
-
-
- PPPPaaaaggggeeee 3333
-
-
-
-
-
-
- ____GGGGEEEEMMMMVVVV((((3333FFFF)))) ____GGGGEEEEMMMMVVVV((((3333FFFF))))
-
-
-
- TTTTUUUUNNNNIIIINNNNGGGG
- Optimized and parallelized for SGI R3000, R4x00 and R8000 platforms.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- PPPPaaaaggggeeee 4444
-
-
-
-